#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<sys/wait.h>
#include<sys/types.h>
int main()
{
    pid_t id =fork();
    if(id == 0)
    {
        putenv("HHH=111111111111");
        printf("I am child. pid:%d,ppid:%d\n",getpid(),getppid());
        extern char** environ;
       // char* const env[]=
       // {
       //    (char*) "shh=11111111111111",
       //    (char*) "hello=222222222222",
       //    NULL
       // };
        char* const argv[]=
        {
           (char*) "myprocess",
            NULL
        };
        execvpe("./myprocess",argv,environ);
    }
    int status = 0;
    pid_t rid = waitpid(id,&status,0);
    if(rid > 0)
    {
        printf("child quit succeed.rid:%d\n",rid);
    }
    else
    {
        printf("quit failed");
    }
    return 0;
}
//int main()
//{
//    printf("I am process.pid:%d,ppid:%d\n",getpid(),getppid());
//
//    char* const  argv[] = {
//        (char*)"pwd",
//        NULL
//    };
//    execvp("pwd",argv);
//
//    printf("1111111111111");
//    return 0;
//}
